For adding an artificial reverberation to a signal such as a tone signal by electronic means, the most direct method is one in which a reverberation sound is produced by superposing signals having different time delays relative to a direct sound in correspondence to the impulse response in an imaginary acoustic field such as an auditorium. If the impulse response in the imaginary acoustic field is expressed by a train of reflected sounds having a delay time .tau..sub.i and a level g.sub.i (i being 1, 2, . . . , n) with respect to a direct sound R.sub.0 as shown in FIG. 1, a reverberation sound is produced by preparing reflected sounds for each sample of an input signal using the delay time .tau..sub.i and level g.sub.i as parameters (reflected sound parameters) and superposing these reflected sounds for each sample with respect to the same time point (an operation such as this in which delay signals are multiplied with gains and added together is called a "convolution operation").
The principle of the convolution operation is shown in FIG. 2. Referring to FIG. 2, each sampled value of an input signal is applied to a shift register 1 having a plurality of taps and shifted successively at each sampling period. During one sampling period, delay signals x.sub.1 to x.sub.n for each sampled value are provided from the respective taps corresponding to delay times .tau..sub.1 to .tau..sub.n and these delay signals are supplied with coefficients (gains) g.sub.1 to g.sub.n by multipliers (amplifiers) 2-1, 2-2, . . . , 2-n thereafter are added together in an adder 3 to provide a sampled value of a reverberation signal which is ##EQU1##
Specifically, a sampled value of a reverberation signal is produced in a manner shown in FIG. 3. In FIG. 3, each sampled value of an input signal is stored in a data memory 10. Delay time data .tau..sub.1 to .tau..sub.n are sequentially read out from a parameter memory 12 and, using this data as the address signal, delay signals x.sub.1 to x.sub.n corresponding to respective delay time .tau..sub.1 to .tau..sub.n are sequentially read out from the data memory 10. The read out delay signals x.sub.1 to x.sub.n are multiplied with coefficients g.sub.1 to g.sub.n in a multiplier 14 to sequentially produce individual reflected sound signals x.sub.1 .multidot.g.sub.1 through x.sub.n .multidot.g.sub.n. A sampled value of a reverberation signal is produced by accumulating these reflected sound signals by an accumulator 16 consisting of an adder 18 and a register 20. The above described operation is repeated each time a new input signal is applied to the data memory 10 and a series of reverberation signals are thereby produced.
In the above described convolution operation according to the serial sequential processing, one sampled value of a reverberation signal must be produced by performing the above described series of operations within one sampling period of an input signal. The number of points for the convolution operation within one sampling period, i.e., the number of times the accumulator 16 accumulates data supplied with the coefficients within one sampling period, however, is limited by the operation speed of the device.
For obtaining a reverberation sound which is as natural as possible, it is desirable to increase the amount of information as much as possible by increasing the number of convolution points, that is, increase the number of the reflected sound paratmeters (.tau..sub.i .multidot.g.sub.i) employed as much as possible. This however is difficult for the above described reason. In this regard, there can be assumed a device which attempts to obtain a reverberation sound by suitably thinning the reflected sound parameters. This however brings about coarseness in the density of the reflected sounds on the time axis resulting in unnaturalness in the produced reverberation sound.
There can be assumed also an attempt which, utilizing the phenomenon that, in a case where the input signal is continuously applied, the latter half of the reverberation sound which is of a smaller level tends to become masked by a succeeding input signal and thereby become less audible, uses only an initial portion of the reflected sound parameters, discarding a latter portion thereof. This method is effective when the input signal is continuously applied but, when the input signal is interrupted, the reverberation sound also is interrupted suddenly, leaving an unnatural impression to the hearer.
For overcoming these inconveniences, there has been proposed an adaptive type reverberation imparting device (Japanese Patent Preliminary Publication No. Sho 60-73694). According to this adaptive type device, a predetermined number of reflected sound parameters of more significant bits are selectively used when the input signal is continuously applied and, when the input signal has been interrupted, the reflected sound parameters to be used are sequentially shifted to those of less significant bits. By this arrangement, all of the reflected sound parameters with respect to several samples immediately before the input signal is interrupted are sequentially used to form reflected sounds and, accordingly, a long and natural reverberation sound is obtained.
In the adaptive type reverberation imparting device, the operation for producing a reverberation sound is switched from a fixed type operation, in which the reflected sound parameters used are fixed to a predetermined number of parameters of more significant bits, to an adaptive type operation in which the parameters used are sequentially shifted to those of less significant bits upon detection of the fact that the input signal has reached a zero level or a predetermined decreased level. For determining whether the detection of such level signifies a mere zero or such predetermined level crossing of the signal waveshape or interruption of the input signal, this device requires a relatively long period of time in the order of several ten milliseconds for continuously examining the level of the input signal. Besides, in the adaptive type device, the adaptive type operation must be performed retroactive to the initial input signal portion in the detection period if the interruption of the signal has been found. The input signal must therefore be always delayed by the detection period with a result that time delay is produced between the input signal and the output signal. This will be discussed more in detail below.
FIG. 4 shows an example of the prior art adaptive type reverberation imparting device.
Sampled values of an input signal are stored once in a prememory 22 in a zero detection section 5 and sequentially transferred to a data memory 24 in an adaptive type convolution operation section 6 after being delayed by a period of several ten milliseconds during which the zero detection is effected.
A zero detection circuit 26 accumulates sampled values of several ten milliseconds stored in the prememory 22 and, when the accumulated value is higher than a certain threshold value, it judges that the input signal is continuously being applied whereas, when the accumulated value is lower than the threshold value, it judges that the input signal has been interrupted.
The sampled values of the input signal delivered out of the prememory 22 are sequentially applied to the data memory 24 and written therein from the oldest sampled value and sequentially renewed.
An impulse response delay memory 30 stores parameter .tau..sub.i (i being 1, 2, . . . , n) of the delay time. An impulse response level memory 32 stores parameter g.sub.i (i being 1, 2, . . . , n) of the level.
A counter 28 is provided for controlling operation timing of the adaptive type convolution operation
A sequence controller 34 is provided for selecting which of the parameters (.tau..sub.i, g.sub.i) totalling n stored in the delay memory 30 and the level memory 32 should be used as parameters totalling k for forming one sampled value of the reverberation sound. That is, the sequence controller 34 controls the device to perform the fixed type operation such that k parameters (.tau..sub.i .multidot.g.sub.i) through (.tau..sub.k .multidot.g.sub.k) from the first one are sequentially read out in response to the count in the counter 28 while the input signal is continuously applied.
Upon detection of the interruption of the input signal by the zero detection circuit 27, the sequence controller 34 controls the device to perform the adaptive type operation. In the adaptive type operation, time t from the start of the operation (i.e., the time elapsing since the input signal has been interrupted) is measured and parameters totalling k from the most significant bit which satisfy the relation t.ltoreq..tau..sub.i are used. Since the time t is t=0 initially, the parameters (.tau..sub.1, g.sub.1) through (.tau..sub.k, g.sub.k) are used. As the time t becomes .tau..sub.2 .gtoreq.t&gt;.tau..sub.1, the parameters (.tau..sub.2, g.sub.2) through (.tau..sub.k+1, g.sub.k+1) are used. Further, as the time t becomes .tau..sub.3 .gtoreq.t&gt;.tau..sub.2, the parameters (.tau..sub.3, g.sub.3) through (.tau..sub.k+2, g.sub.k+2) are used. In this manner, the range of the parameters used is sequentially shifted to less significant bits. The accumulated value of the convolution operation decreases as the range of the parameters is shifted so that the reverberation sound is gradually attenuated. Thus, the reverberation sound completely dies away .tau..sub.n after the input signal was interrupted.
An address controller 36 is provided for designating write addresses and read addresses in the data memory 24. As to the write address, the address for the oldest sampled value is sequentially designated and the address is renewed for a new sampled value. As to the read address, an address corresponding to the delay time parameter .tau..sub.i is designated on the basis of the write address (since the write address is sequentially shifted at each sampling period, the read address corresponding to .tau..sub.i should be correspondingly shifted) and a delay signal x.sub.i at the read address is read out. The address controller 36 supplies address information concerning the present address to the sequence controller 34.
Writing into the data memory 24 is prohibited upon detection of the zero level and is resumed upon starting of application of the input signal again.
A convolution operation circuit 38 sequentially multiplies the delay signal x.sub.i read out sequentially from the data memory 24 with the corresponding level parameter g.sub.i read out from the impulse response level memory 32 and accumulates the products of the multiplication to produce one sampled value of a reverberation sound. Thus, one sampled value of the reverberation sound is produced at each sampling period of the input signal and a series of reverberation signals are produced by repeating the above described operation.
FIG. 5 shows the operation of the reverberation imparting device shown in FIG. 4 in the order of a to m. The respective states a to m represent states at time points indicated by arrows at the right ends of these states. States of the memories (i.e., the prememory 22 and the data memory 24) are indicated above and the parameters are indicated below in each set of the states. In each state of the memories, a shaded portion indicated by oblique lines extending in a single direction represents a state in which a sampled value of the input signal shown above it is stored in the memories. In each state of the parameters, a shaded portion indicated by oblique lines extending in a single direction represents parameters (.tau..sub.i, g.sub.i) selected at that time point. In each state of the memories, a shaded portion indicated by crossing oblique lines represents a sampled value of the input signal which is subject to the convolution operation using the selected parameters.
Among the symbols a to m representing the respective states, those encircled by a single circle indicate a state in which the fixed type convolution operation is performed i.e., the convolution operation is performed using k parameters (.tau..sub.1, g.sub.1) through (.tau..sub.k, g.sub.k) from the first one. The states encircled by double circles indicate a state in which the adaptive type convolution operation is performed, i.e., the convolution operation is performed with the selected parameters being sequentially shifted to less significant bits.
The output signal shown at the bottom of FIG. 5 represents a series of reverberation signals formed by connecting results of the convolution operation (accumulated values), i.e., sampled values of a reverberation sound. It will be understood from this figure that the output signal has a delay to the input signal in the amount corresponding to the time during which the input signal is held in the prememory 22. This causes a difference between the direct sound and the reverberation sound which brings about unnaturalness in the reverberation sound produced. This problem can be overcome in the case of playback of a record disc by delaying the direct sound by length of time equivalent to this difference. In the case of a live performance of a musical instrument or a live vocal performance, however, no artificial delay can be applied to sounds of such live performance so that the problem of the delay between the input and output signals remains unsettled.
In the prior art reverberation imparting device, no particular consideration has been given to frequency characteristics of a reverberation signal produced in the above described manner. In a natural reverberation sound, however, frequency characteristics change with elapse of time. That is, the higher the frequency component, the faster it is attenuated with a result that only a low frequency component remains after elapse of some time. If, accordingly, frequency characteristics of a reverberation signal to be produced can be timewise controlled in the process of imparting reverberation, a more natural reverberation sound can be artificially produced. Besides, additional conveniences such as imparting special tonal effects will be derived if frequency characteristics of a reverberation sound can be timewise controlled.